Storage systems may include a controller that handles commands received from a host. The controller may be configured to store the commands in a queue when the controller is unable to immediately execute the command. The commands may be stored in multiple channels of the queue to achieve maximum throughput. To do so, the commands may be divided into multiple sub-commands. When the individual sub-commands are executed, they may be executed at different times. That is, some of the sub-commands are executed while other sub-commands are pending in the queue.